The present invention relates to an omnidirectional camera, which is provided with a plurality of cameras and is used for picking up an omnidirectional image.
As map information or the like for navigator, image data along a route are acquired, and further, a measurement is performed based on the images acquired. An omnidirectional camera is used for acquiring such images. The omnidirectional camera is installed on a ceiling of a mobile vehicle such as an automobile or the like, and while the mobile vehicle is moving, the omnidirectional camera picks up images of structures and sceneries or the like along the route.
For such purpose, a speed to sequentially take in the images acquired by the omnidirectional camera must correspond to a moving speed of the mobile vehicle, and the speed of the mobile vehicle is limited to the speed to take in the images.
Further, the signal itself as outputted from an image pickup element of the omnidirectional camera is not an image data and the signal is an enormous amount of data. Therefore, for the purpose of storing the data as image data, the data must be converted to image data and the data must also be compressed.
Referring to FIG. 7, description will be given below on a conventional type image data processing device which compresses the data outputted from the camera (image pickup element) as image data. To simplify the explanation, it is supposed that the processing of the data is performed on the data outputted from one camera.
In FIG. 7, reference numeral 1 represents an image data processing device, reference numeral 2 represents a photodetection signal to be outputted from a camera, reference numeral 3 represents an external memory, and reference numeral 4 represents a CPU. Describing more concretely, the photodetection signal 2 is a photodetection signal outputted from pixel of image pickup element of the camera. As the external memory 3, DRAM (Dynamic Random Access Memory) such as DDR2 (Double Data Rate 2) or the like is used, for instance.
The image data processing device 1 primarily comprises a signal processing unit 5, a first internal memory 6, an input/output control unit 7, a memory controller 8, a second internal memory 9, a data conversion unit 10, a third internal memory 11, a fourth internal memory 12, an image data input/output unit 13, and an internal register 14.
The photodetection signal 2 is inputted to the signal processing unit 5. The signal processing unit 5 converts the photodetection signal 2 as inputted from a serial signal to a parallel signal. After carrying out signal processing as required such as conversion of number of bits or the like, the signals are outputted to the first internal memory 6.
The first internal memory 6 temporarily stores the signals until the inputted signals reach a predetermined amount. Here, the predetermined amount is “2048 pixels×16”, for instance. When the stored data amount reaches “2048 pixels×16”, the data are written into the external memory 3 via the input/output control unit 7 and the memory controller 8. In this case, the memory controller 8 controls a timing to write the data into the external memory 3 and a region of the external memory 3, where the data are written.
The external memory 3 has a photodetection signal storage region where the photodetection signals 2 are stored and an image data storage region where the image data are stored. The signals outputted from the first internal memory 6 are stored in the photodetection storage region via the input/output control unit 7 and the memory controller 8 (arrow mark “a” in FIG. 7).
The photodetection signals 2 are continuously inputted to the first internal memory 6, and the signals stored in the first internal memory 6 are written in the external memory 3 via the memory controller 8 each time the data reaches the predetermined amount, and the data are stored in the external memory 3. When the stored data reach an amount corresponding to one frame, the input/output control unit 7 cuts out the data by a predetermined amount out of amount for one frame (e.g. “2048 pixels×16”) via the memory controller 8, and the data are outputted to the second internal memory 9 (arrow mark “b” in FIG. 7).
The data conversion unit 10 is a JPEG encoder, for instance, and the signals accumulated in the second internal memory 9 are compressed and converted to image data of JPEG. The image data as converted are temporarily stored in the third internal memory 11, and the data are written into the external memory 3 from the input/output control unit 7 at required timing which is controlled by the memory controller 8.
The data of each predetermined amount are compressed and converted to image data at the data conversion unit 10 and the data are sequentially written into the external memory 3. When the image data thus converted reach the amount of one frame, the data are stored in the image data storage region as image data of one frame (arrow mark “c” in FIG. 7).
Next, in a case where the CPU 4 carries out measurement or the like according to the image data, a reading command is issued to the input/output unit 7 via the image data input/output unit 13, and image data are read out via the memory controller 8 (arrow mark “d” in FIG. 7). The image data are outputted to the CPU 4 via the fourth internal memory 12 and the image data input/output unit 13.
In the image data processing device 1 as described above, it is so arranged that data of large capacity of one frame are inputted and outputted by as many as four times between the image data processing device 1 and the external memory 3. Also, image compression and conversion are carried out for each frame. As a result, an image processing is naturally performed with a delay of one frame.
Incidentally, in the image data processing device 1 as described above, a wide angle lens is used as lens optical system in each of the cameras which constitute an omnidirectional camera, and an image pickup element is provided corresponding to each of the wide angle lenses. For this reason, the image to be acquired by each of the image pickup elements is brighter near the center of the lens optical system while it is darker at peripheral parts. Omnidirectional image is made up by synthesizing the images, each of which is acquired by each individual image pickup element. In a case where there is a difference of brightness in each of the images, the brightness of the images will be ununiform when omnidirectional images are made up, and the ununiformity is not desirable.
Also, giving and taking of the data to and from the external memory 3 cause a bottleneck in the conventional type image data processing. Further, from the reason that there is a time lag for one frame in the conversion or the compression of the image data or the like, the speed to take in the images acquired by the camera has been limited. Also, in the case such as the onmidirectional camera where there are the plurality of cameras and images are acquired at the same time by the plurality of cameras, limitation on the speed to take in the image has been a big problem. In addition, a vast amount of calculation time is required for the purpose of compensating the ununiformity of the brightness of the images by image processing.